﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Kaffekonsumtion
{
    public static class Validator
    {
        private static string title = "Fel meddelande";

        public static string Title
        {
            get
            {
                return title;
            }
            set
            {
                title = value;
            }
        }
        public static bool IsPresent(TextBox textBox)
        {
            if (textBox.Text == "")
            {
                MessageBox.Show(textBox.Tag + " fältet måste vara ifylld.", Title);
                textBox.Focus();
                return false;
            }
            return true;
        }

        public static bool IsInt32(TextBox textBox)
        {
            try
            {
                Convert.ToInt32(textBox.Text);
                return true;
            }
            catch (FormatException)
            {
                MessageBox.Show(textBox.Tag + " måste bestå av 10 siffror.", Title);
                textBox.Focus();
                return false;
            }
        }

        public static bool IsWithinRange(ComboBox value, int min, int max)
        {
            int number = Convert.ToInt32(value.Text);
            if (number < min || number > max)
            {
                MessageBox.Show(value.Tag + " måste vara " + min
                    + " till " + max + ".", Title);
                value.Focus();
                return false;
            }
            return true;
        }

        public static bool IsValidEmail(TextBox textBox)
        {
            if (textBox.Text.IndexOf("@") == -1 ||
                 textBox.Text.IndexOf(".") == -1)
            {
                MessageBox.Show(textBox.Tag + " måste vara en giltig address.",
                    Title);
                textBox.Focus();
                return false;
            }
            else
            {
                return true;
            }
        }
    }
}
